查看原文
其他

中文预训练模型!| 哈工大 && 科大讯飞 提出多任务预训练模型LERT(含源码)

ShuYini AINLPer 2023-07-10
点击下方卡片,关注‘’AINLPer‘’
更多干货,第一时间送达

引言

  哈工大&讯飞提出了一种新的预训练语言模型LERT,该模型结合了三种语言特征,与掩模语言模型一起进行多任务预训练。实验结果显示,LERT算法能够显著提高各种预训练语言模型的性能。

背景介绍

  预训练语言模型(PLM)考虑了丰富的上下文信息,是一种成功的文本表示方法。在几种预训练的语言模型中,自编码预训练模型PLM,如BERT和RoBERTa在自然语言理解(NLU)任务中相对流行。「与使用标准语言模型作为训练目标的自回归预训练模型(PLM,如GPT)不同,自编码预训练模型PLM在很大程度上依赖于预训练任务来学习上下文信息」。掩蔽语言模型 (MLM)最早在BERT中提出,一直是自编码预训练模型PLM的主要预训练任务,例如 RoBERTa、ALBERT、ERNIE、DeBERTa等,表明了它在文本表示方面的泛化性。掩码语言模型(MLM)的任务是学习从掩码文本中恢复单词信息,其中掩码单词通常是随机选择的,这表明掩蔽语言模型MLM是一个与语言无关的预训练任务,没有明确利用语言知识。

 尽管人们普遍认为预训练语言模型需要丰富的语言知识,但一些研究人员指出还需要进一步在PLM中添加外部知识。具体来说,为了将语言知识纳入预训练语言模型,研究人员们做出了各种努力,例如引入结构知识、包含额外的语言任务等。尽管已经做出了各种努力,但以前的工作仍然有一定的局限性。「以上工作大多数只关注在PLM中含有几种语言特征,而没有仔细分析各个特征对模型整体的影响,以及针对不同任务特征之间的关系」。此外,实现相对复杂,因为结构知识不能直接应用到plm中。

 为了解决上述问题,本文利用传统的自然语言处理方法显式地包含更多的语言知识,为模型预训练创建弱监督数据。此外,为了研究预训练语言模型是否能从显式注入语言知识中获益,本文提出了一个新的预训练语言模型,称为LERT(来自Transformer的语言激励双向编码器表示)。基于掩模语言模型,LERT在词性标注、命名实体识别和依赖关系解析三种语言任务的基础上进行训练,形成多任务预训练方案。此外,为了平衡各个预训练任务的学习速度,提出了一种语言信息预训练(LIP)策略,它可以更快地学习基础语言知识。

模型方法

 下图为本文提出的LERT。 可以看到其主要流程主要分为两个部分语言分析和多任务预训练。

语言分析

「语言分析」对给定的输入文本进行语言分析,得到分词信息并提取其语言特征;分词信息用于在掩码语言模型任务中进行汉语全词掩码(wwm)和N-gram掩码

 本文使用LTP对输入文本的语言标签进行标注,这些标签具有三种类型的语言特征,即词性(part-of-speech, POS)、命名实体识别(named entity recognition, NER)和依赖分析(dependency parsing, DEP)。这三种语言特征是比较基本的,在标注上都有很好的表现,满足一对一标注的条件完整的语言标签列表,如下表所示。 在每个输入标记获得这些语言标签之后,可以将它们视为用于预训练的弱监督标签,从而进入预训练阶段。

模型预训练

「模型预训练」利用提取出的语言特征,在原掩码语言模型(MLM)任务的基础上进行多任务预训练,形成基于语言的预训练方案

 在MLM任务中,遵循了以往的大部分工作,只对掩码位置进行预测,而没有对整个输入序列进行预测。对于每个语言任务,这里将其视为分类任务。每个输入标记都被投影到其语言特征(POS、NER和DEP),使用语言分析中描述的方法对其进行标注。具体来说,给定表示,使用全连接层将其投影到每个任务的语言标签中。其中*可以是三种语言任务之一,而表示每个任务的语言标签的数量。这里使用标准交叉熵损失来优化每个语言任务。

 模型整个训练损失函数如下所示: 直觉上,掩码语言模型任务是所有子任务中最重要的一个。然而,如何决定每个语言任务的比例因子λ呢?针对这个问题本文提出了一个语言信息预训练(LIP)策略来解决这个问题。从这些语言特征来看,它们并不是完全等价的。NER特征依赖于POS标记的输出,而DEP特征同时依赖于POS和NER标记。假设POS是最基本的语言特征,其次是NER和DEP,根据它们的依赖性,为每个语言特征分配不同的学习速度,使得POS的学习速度快于NER和DEP,这类似于人类的学习,通常是先学习基本的东西,再学习依赖的高级知识。形式上,损失缩放参数由当前训练步长t和缩放控制着每项语言任务的学习速度。 具体来说,在这篇论文中,设分别为POS、NER和DEP特征总训练步长的1/6、1/3和1/2。在总训练步数的1/2之后,训练损失将变为一下公式: 其中所有任务对总损耗的贡献相等。这样,POS特征学习速度最快,其次是NER和DEP,通过经验发现这个策略的性能更好,并且符合直观的想法。

实验结果

 对十项汉语自然语言理解任务进行了实验,实验结果表明,「LERT算法能够显著提高各种预训练语言模型的性能」。 

1、MRC任务(CMRC 2018(简体中文)和DRCD(繁体中文))的实验结果如下所示:2、文本分类任务(含自然语言推理任务)XNLI, LCQMC, BQ Corpus, ChnSentiCorp, TNEWS, 以及OCNLI。实验结果如下所示:3、命名实体识别任务实验结果如下所示:

推荐阅读

[1]快看!Transformer中的自注意力机制(Self-attention)竟有这么多变体

[2]提升模型训练效果新方法--新增bad case?

[3]Transformer变体!用于时间序列预测的指数平滑Transformer(含源码)

[3]EMNLP2022 | “Meta AI 9篇接受论文”,其中7篇主会、2篇Findings

论文&&源码

Paper:https://arxiv.org/pdf/2211.05344v1.pdf

Code:https://github.com/ymcui/LERT

点击下方链接🔗关注我们

「资料整理不易,点个赞、再看吧」

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存